1. Field of the Invention
The invention relates generally to the field of computer systems and, more specifically, to a technique for use in a data storage system for recovering a bad track of data, such as in a disk device, when multiple copies of the same data are stored in different tracks.
2. Description of the Related Art
Data storage systems such as storage servers as commonly used by corporations and other organizations have high-capacity disk arrays to store large amounts of data from external host systems. A data storage system may also backup data from another data storage system, such as at a remote site. The IBM® Enterprise Storage Server (ESS) is an example of such a data storage system. Such systems can access arrays of disks or other storage media to store and retrieve data. Moreover, redundant capabilities may be provided as a further safeguard against data loss. For example, the IBM ESS is a dual cluster storage server that includes two separate server clusters that can access the same storage disks.
Depending on the importance of data that is being stored at the data storage system, multiple copies of the data may be maintained on different tracks on the disks to ensure that a good copy of the data is retained even when one or more of the data tracks can no longer be read. For example, a track cannot be read if a medium error is detected on the disk driver, in which case the driver is usually physically defective, or the track is otherwise corrupt. It is important to maintain all copies of a track in a good state so that the correct data can be accessed.
However, dual or other multi-cluster data storage systems are arranged so that, under normal circumstances, only one of the storage clusters has the ability to write to a track. This avoids a situation where both storage clusters try to write data to the same track at the same time. Furthermore, each storage cluster has read access for each track, as well as the ability to detect any bad tracks. Accordingly, the storage cluster detecting a bad track will not be able to recover the bad track, such as by writing data from a corresponding good track over the bad track, if the cluster does not have write access to the bad track. Also, for either a single server or multiple server clusters, there might be more than one bad copy of a track, in which case it is inefficient to recover them one by one.